A bandwidth that is a usable band in a communication line (hereinafter, also referred to as an “available bandwidth”) is a vacant bandwidth obtained by subtracting other traffic that is flowing in a network (hereinafter, referred to as “cross traffic”) from the bottle-neck physical bandwidth of a communication line. For example, in a case where the bottle-neck physical bandwidth is 100 Mbps and the cross traffic is 30 Mbps in the communication line, the available bandwidth is 100−30=70 Mbps.
Currently, estimation of the available bandwidth has been an important factor for video chat, videophone, TV conference, and the like involving communications between terminals in both directions to transmit images. The estimation is important because the estimation can ensure image quality. Specifically, by keeping an image transmission rate at an estimated value of the available bandwidth or lower, the sum of the image transmission rate and the cross traffic can be prevented from exceeding the bottleneck-link physical bandwidth, whereby a packet loss can be prevented.
For example, PTL 1 describes a related technique for estimating the available bandwidth. In PTL 1, as illustrated in FIG. 1 A, a transmitting device transmits a set of packets (hereinafter, referred to as a “packet train”) for estimating an available bandwidth to a receiving device. In the packet train, the packets are at regular intervals, and the packet size gradually increases. The receiving device detects a change in a reception interval of each packet, whereby the available bandwidth is estimated. With this transmission method, the packet transmission rate linearly increases in the packet train. When the packet transmission rate exceeds the available bandwidth of a network while the packet train is passing through the network, packets are temporarily queued in a device such as a router or a switch on the network (the delay caused by the queuing is hereinafter referred to as “queuing delay”). Thus, as illustrated in FIG. 1 B, the packet reception interval in the receiving device increases relative to the transmission interval in the transmitting device. This mechanism is used to calculate the available bandwidth. Specifically, a point where the packet reception interval in the receiving device starts to increase relative to the transmission interval in the transmitting device is detected, and the packet size corresponding to that point is divided by the transmission interval.
In PTL 1, the reception interval is directly used to calculate the available bandwidth. Alternatively, the queuing delay may be calculated from a packet transmission/reception time, and a point where the queuing delay rises to a positive value from 0 may be detected to achieve the estimation of the available bandwidth equivalent to that in PTL 1.
There are two types of queuing delay: cumulative queuing delay and successive queuing delay. As illustrated in FIG. 2, the cumulative queuing delay of the j-th (j=2, 3, . . . , N) packet is obtained asQc(j)={tr(j)−tr(l)}−{ts(j)−ts(1)}where ts(i) represents the transmission time of the i-th (i=1, 2, . . . , N) packet in the transmitting device, and tr(i) represents the reception time of the i-th packet in the receiving device. More specifically, Qc(j) is a value obtained by subtracting elapsed time 14 between the transmission time of first packet to the to that of the j-th packet in the transmitting device, from elapsed time 12 between the reception time of the first packet and that of the j-th packet in the receiving device. The successive queuing delay will be defined later.